DEFINE CLASS negsocio as custom

	vapellido = ""
	vnombre = ""
	vemail = "" 
	vidsocio = 0
	vdomicilio = ""
	vnrosocio = 0
	vtelefono = ""
	vtipodoc  = ""
	vnrodoc = ""
	verror = ""
	
	FUNCTION nosuperalimite as Boolean
		dnosuperalimite = NEWOBJECT("datasocios","data.prg")
		
		IF dnosuperalimite.cantidad() <= 2000 THEN
			RETURN .T.
		ELSE 
			RETURN .F.
		ENDIF 
	ENDFUNC 
	
	FUNCTION existesocio as Boolean
		PARAMETERS nom, ape
		dexistesocio = NEWOBJECT("datasocios","data.prg")
		RETURN dexistesocio.existesocio(nom,ape)
	ENDFUNC	
	
	FUNCTION getall as Cursor
		dall = NEWOBJECT("datasocios","data.prg")
		RETURN dall.getall()		
	ENDFUNC

	FUNCTION eliminar as Boolean
		PARAMETERS idsoc
		eliminar = NEWOBJECT("datasocios","data.prg")
		RETURN eliminar.delete(idsoc)
	ENDFUNC
	
	FUNCTION ObtenerUno as Boolean
		PARAMETERS bidsocio
		exito = .F.
		dObtenerUno = NEWOBJECT("datasocios","data.prg")
		
		exito = dObtenerUno.getone(bidsocio)
		
		IF (exito) THEN		
			this.vapellido = dObtenerUno.vapellido 
			this.vnombre = dObtenerUno.vnombre
			this.vemail = dObtenerUno.vemail
			this.vidsocio = dObtenerUno.vidsocio
			this.vdomicilio = dObtenerUno.vdomicilio
			this.vnrosocio = dObtenerUno.vnrosocio
			this.vtelefono = dObtenerUno.vtelefono
			this.vtipodoc = dObtenerUno.vtipodoc
			this.vnrodoc = dObtenerUno.vnrodoc
		ENDIF
		
		RETURN exito
	ENDFUNC
	
	FUNCTION actualizar as Boolean
		dactualizar = NEWOBJECT("datasocios","data.prg")
		dactualizar.vapellido = this.vapellido 
		dactualizar.vnombre = this.vnombre 
		dactualizar.vemail = this.vemail 
		dactualizar.vidsocio = this.vidsocio 
		dactualizar.vdomicilio = this.vdomicilio 
		dactualizar.vnrosocio = this.vnrosocio 
		dactualizar.vtelefono = this.vtelefono 
		dactualizar.vtipodoc  = this.vtipodoc  
		dactualizar.vnrodoc = this.vnrodoc 
		
		verror = "Error al actualizar "
		
		guardo = dactualizar.actualizar()
		RETURN guardo 
	ENDFUNC
	
	FUNCTION agregar as Boolean	
		IF this.existesocio(this.vnombre,this.vapellido) then
			this.verror = "El socio ya existe"
			RETURN .F.
		ENDIF
		
		IF this.nosuperalimite() then				
			dagregar = NEWOBJECT("datasocios","data.prg")
			dagregar.vapellido = this.vapellido 
			dagregar.vnombre = this.vnombre 
			dagregar.vemail = this.vemail 
			dagregar.vidsocio = this.vidsocio 
			dagregar.vdomicilio = this.vdomicilio 
			dagregar.vnrosocio = this.vnrosocio 
			dagregar.vtelefono = this.vtelefono 
			dagregar.vtipodoc  = this.vtipodoc  
			dagregar.vnrodoc = this.vnrodoc
		    	
			RETURN dagregar.nuevo() 
		ELSE
			this.verror = "Se ha superado el limite de socios"
			RETURN .F.
		endif
	ENDFUNC

	
	FUNCTION prestamosPendientes AS CUSTOM
		aux = NEWOBJECT("dataautores","data.prg")
		aux.getPrestamosPend
	ENDFUNC


ENDDEFINE